package com.zhc.tools.common.util;

import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.apache.commons.lang3.StringUtils;

/**
 * 说明：数据校验
 * @author zhc
 */
public class ValidDataHelper {

	/*** 
	 * 判断 String 是否是非负整数 int 
	 *  
	 * @param input
	 * @return
	 */  
	public static boolean isInteger(String input){
		if (StringUtils.isNotBlank(input)) {
			Matcher mer = Pattern.compile("^[+]?([0]|([1-9]{1}\\d*))$").matcher(input);
			return mer.find();
		}
		return false;
	}
	
	/*** 
	 * 判断 String 是否是非负数 
	 *  
	 * @param input
	 * @return
	 */  
	public static boolean isFloat(String input){
		if (StringUtils.isNotBlank(input)) {
			Matcher mer = Pattern.compile("^[+]?\\d*(\\.{0,1}\\d+){0,1}$").matcher(input);
			return mer.find();
		}
		return false;
	}
	
	public static BigDecimal convBigDecimal(String value, int num) {
		if (StringUtils.isBlank(value)) {
			return new BigDecimal("0");  
		} else {
			BigDecimal decimal = new BigDecimal(value);
			decimal = decimal.setScale(num, RoundingMode.HALF_UP);
			return decimal;
		}
	}
}
